1. Field of the Invention
This invention relates to a printer device, and more particularly to a printer device which is provided with a function of storing print job data.
2. Description of the Related Art
Recently, with development of the network technology and increase in the processing speed of printers, it is becoming normal that a plurality of print job data output units (e.g., computers) connected to each other through a network hold one printer device in common. In the case where the printer device itself held in common has an interface for the network (e.g., an Ethernet interface), it is possible to arrange the system so that the printer device is directly connected to the network and effects printing by receiving print job data directly from the print job data output units, whereas in the case where the printer device itself held in common does not have an interface for the network, it is possible to arrange the system so that the printer device is connected to one of the print job data output units on the network by way of an interface such as a parallel interface or a USB interface and effects printing by receiving print job data directly from said one of the print job data output units, and at the same time, effects printing by receiving print job data from the other print job data output units on the network by way of the one of the print job data output units. Since the printer device effects printing by receiving print job data from each of the print job data output units on the network independently of whether the printer device is directly connected to the network, a plurality of print job data output units are said to hold one printer device in common through a network in either cases.
The printer device, when broadly divided, comprises an intermediate processing portion which carries out intermediate processing on the print job data and a print engine portion which makes printings according to data (print data) in a predetermined format obtained by transforming the print job data by the intermediate processing. The intermediate processing comprises page analysis processing of the print job data and expansion processing of the print job data. The page analysis processing includes, for instance, extraction of abstract information of the transmitted print job data such as the number of pages, identification of position of each page and extraction of information unique to each page (e.g., information on image processing for only a specified page or on the size of the paper different from other pages), and the expansion processing includes expansion of print job data on the basis of the result of the page analysis processing into print data (e.g., image data) for processing by the print engine.
In the system where one printer device is held by a plurality of print job data output units by way of a network, the printer device executes page analysis processing, expansion processing and printing in this order for each print job data basically in the order of receipt. In the printer device, the print job data including a print instruction as well as the print job data not including a print instruction but including a storage instruction can be processed. There is a printer device which executes page analysis processing, expansion processing and printing in this order for the print job data including a print instruction whereas can store the print job data in a storage device such as a hard disc inherent to the printer device for the print job data not including a print instruction but including a storage instruction (the print job data solely including a storage instruction). In such a printer device (will be referred to as an “on-demand printer device”, hereinbelow.), the user can issue an instruction of printing the stored print job data by way of the control panel inherent to the printer device. The printer device calls the print job data instructed to print from the storage device upon receipt the print instruction and outputs the print job data to the print engine after necessary processing, and the print engine makes printings according to the processed print job data. The print job data including a print instruction can be further classified into print job data solely including a print instruction and that including both a print instruction and a storage instruction. For the print job data including both a print instruction and a storage instruction, the printer device executes the intermediate processing and printing to obtain printings and at the same time stores the print job data as in the print job data solely including a storage instruction.
The on-demand printer device either stores the print job data including a print instruction as it is received without carrying out any intermediate processing on the print job data or stores the print job data including a print instruction after carrying out intermediate processing on the print job data. When the print job data is stored without carrying out intermediate processing, since the storage processing has been ended substantially simultaneously with receipt of the print job data, the print job data including a print instruction can be processed at once and printings can be obtained at once even if a print job data including a print instruction is received immediately after receipt of the print job data solely including a storage instruction. On the other hand, when instructed to print the stored print job data by way of, for instance, the control panel, a long time is required since it is necessary to carry out the intermediate processing. The printer device of such a structure is produced from the view that the print job data including a print instruction should be processed at high speed to obtain printings while the print job data solely including a storage instruction may be stored at any time and need not be processed so quickly as the print job data including a print instruction.
On the other hand when the print job data including a print instruction is stored after the intermediate processing, the stored print job data can be immediately output to the print engine when instructed to print the stored print job data by way of, for instance, the control panel, since the stored print job data has undergone the intermediate processing, and it is unnecessary to carry out the intermediate processing on the stored print job data. However, when the print job data including a print instruction is received during intermediate processing on the print job data solely including a storage instruction, the print job data including a print instruction cannot be processed until the intermediate processing on the print job data solely including a storage instruction is ended, and accordingly, processing on the print job data including a print instruction is slow.
Further, in the forms where the print job data including a print instruction is stored after the intermediate processing, there has been known a form where the print job data which has undergone only a part of the intermediate processing is stored in place of storing the print job data which has undergone the whole of the intermediate processing. This approach stands between the form where the print job data is stored with no intermediate processing carried out on the print job data and the form where the print job data is stored with only a part of the intermediate processing carried out on the print job data and can avoids the demerits of both the forms but sacrifices the merits of both the forms.
Japanese Unexamined Patent Publication No. 2002-301840 proposes a printer device where, in order to enjoy the merits of both the forms while avoiding the demerits of both the forms, the print job data including a storage instruction is stored after the intermediate processing (or a part of the intermediate processing) while when the print job data including a print instruction is received during intermediate processing on the print job data solely including a storage instruction, the intermediate processing on the print job data solely including a storage instruction is once interrupted to execute the intermediate processing on the received print job data including a print instruction and is resumed after the intermediate processing on the received print job data including a print instruction. In the proposed printer device, since the print job data including a print instruction is processed preferentially to the print job data solely including a storage instruction and the print job data including a storage instruction is finally stored in the form where the intermediate processing has been wholly or partly carried out thereon, printing of the print job data including a print instruction as well as the stored print job data can be made at high speed.
The page analysis processing and the expansion processing forming print job data are conventionally carried out in a time sequence for one piece of print job data. That is, the expansion processing is executed on print data the intermediate processing on which has been finished. However, it is possible to execute the page analysis processing on the next piece of print job data by the portion of the printer device bearing thereon the page analysis processing in parallel to the expansion processing executed on a given piece of print job data by the portion of the printer device bearing thereon the expansion processing. This can be realized by providing one printer device with two CPUs (so-called a dual CPU) and causing the page analysis processing and the expansion processing to be executed by different CPUs or by multitask technology employing one CPU. The multitask is a technology where a plurality of tasks are executed in sequence at fine cycles, and broadly classified into a multitask of priority system where a longer CPU time is allotted to a task of higher priority and a multitask of round robin system where the CPU time is uniformly allotted to the tasks.
However, the user who has transferred print job data solely including a storage instruction sometimes wants to know, for instance, whether the print job data is correctly received by the printer device. Usually, the printer device displays the abstract of the received print job data such as the number of pages thereof on a display such as the control panel after the page analysis processing is ended to permit the user to check. However, the printer device proposed in Japanese Unexamined Patent Publication No. 2002-301840 gives rise to a problem that the abstract of the print job data solely including a storage instruction is displayed slow since in the printer device proposed in Japanese Unexamined Patent Publication No. 2002-301840, when the print job data including a print instruction is received during intermediate processing on the print job data solely including a storage instruction, the intermediate processing on the print job data solely including a storage instruction is once interrupted to execute the intermediate processing on the received print job data including a print instruction and is resumed after the intermediate processing (including up to the expansion processing) on the received print job data including a print instruction, the interrupted intermediate processing on the print job data solely including a storage instruction is not resumed until the intermediate processing on the received print job data including a print instruction is wholly ended.
In the case of the printer device where the page analysis processing and the expansion processing can be executed in parallel, even when the next print job data is received during the expansion processing on the print job data the page analysis processing on which has been finished, the page analysis processing can be executed on the next print job data. In such a printer device, by arranging the system so that the page analysis processing is executed on a plurality of pieces of print job data basically in the order of receipt, while for the processing waiting print job data stored in a temporary memory such as a queue for the page analysis processing, the page analysis processing is preferentially executed on the print job data including a print instruction, processing from the receipt of the print job data including a print instruction up to the printing of the print job data can be quickly executed and at the same time, since the page analysis processing can be executed on the next print job data during the expansion processing on a given piece of print job data (the page analysis processing on which has been finished), the abstract of the print job data solely including a storage instruction can be quickly displayed. However this approach gives rise to a problem that, for instance, when the print job data including a print instruction is received during the page analysis processing on the print job data solely including a storage instruction, processing on the print job data including a print instruction must wait the end of the page analysis processing on the print job data solely including a storage instruction, which can result in slow processing on the print job data including a print instruction.